import { IPSLanguageRes } from '../res/ipslanguage-res';
import { IPSModelObject } from '../ipsmodel-object';

/**
 *
 * 子接口类型识别属性[]
 * @export
 * @interface IPSViewMsg
 */
export interface IPSViewMsg extends IPSModelObject {
  /**
   * @type {string}
   */
  codeName: string;

  /**
   * 内容多语言资源对象
   *
   * @type {IPSLanguageRes}
   */
  getContentPSLanguageRes(): IPSLanguageRes | null;

  /**
   * 内容多语言资源对象
   *
   * @type {IPSLanguageRes}
   */
  get contentPSLanguageRes(): IPSLanguageRes | null;

  /**
   * 内容多语言资源对象（必须存在）
   *
   * @type {IPSLanguageRes}
   */
  getContentPSLanguageResMust(): IPSLanguageRes;

  /**
   * @type {number}
   */
  dynamicMode: number;

  /**
   * @type {string}
   */
  message: string;

  /**
   * @type {string}
   */
  messageType: string;

  /**
   * @type {string}
   */
  position: string;

  /**
   * @type {number}
   */
  removeMode: number;

  /**
   * @type {string}
   */
  title: string;

  /**
   * @type {string}
   */
  titleLanResTag: string;

  /**
   *
   * @type {IPSLanguageRes}
   */
  getTitlePSLanguageRes(): IPSLanguageRes | null;

  /**
   *
   * @type {IPSLanguageRes}
   */
  get titlePSLanguageRes(): IPSLanguageRes | null;

  /**
   *
   * @type {IPSLanguageRes}
   */
  getTitlePSLanguageResMust(): IPSLanguageRes;

  /**
   * @type {boolean}
   */
  enableRemove: boolean;
}
